Meta-F: Metaprogramming and Tactics in an Effectful Program Verifier

نویسندگان

  • Guido Mart'inez
  • Danel Ahman
  • Victor Dumitrescu
  • Nick Giannarakis
  • Chris Hawblitzel
  • Catalin Hritcu
  • Monal Narasimhamurthy
  • Zoe Paraskevopoulou
  • Cl'ement Pit-Claudel
  • Jonathan Protzenko
  • Tahina Ramananandro
  • Aseem Rastogi
  • Nikhil Swamy
چکیده

GUIDO MARTÍNEZ, CIFASIS-CONICET Rosario DANEL AHMAN, Inria Paris VICTOR DUMITRESCU,MSR-Inria Joint Centre NICK GIANNARAKIS, Princeton University CHRIS HAWBLITZEL,Microsoft Research CĂTĂLIN HRIŢCU, Inria Paris MONAL NARASIMHAMURTHY, University of Colorado Boulder ZOE PARASKEVOPOULOU, Princeton University CLÉMENT PIT-CLAUDEL,MIT CSAIL JONATHAN PROTZENKO,Microsoft Research TAHINA RAMANANANDRO,Microsoft Research ASEEM RASTOGI,Microsoft Research NIKHIL SWAMY,Microsoft Research

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Some Ideas for Program Verifier Tactics

A program verifier is a tool that can be used to verify that a “contract” for a program holds – i.e. given a precondition the program guarantees that a given postcondition holds – by only working at the level of the annotated program. An alternative approach is to use an interactive theorem prover, which enables users to encode common proof patterns as special programs called “tactics”. This of...

متن کامل

Tactics for the Dafny Program Verifier

Many modern program verifiers are based on automated theorem provers, which enable full hiding of proof details and allow users to focus all their effort on the program text. This has the advantage that the additional expertise of theorem provers is not required, but has the drawback that when the prover fails to verify a valid program, the user has to annotate the program text with guidance fo...

متن کامل

Program Logics for Homogeneous Meta-programming

A meta-program is a program that generates or manipulates another program; in homogeneous meta-programming, a program may generate new parts of, or manipulate, itself. Meta-programming has been used extensively since macros were introduced to Lisp, yet we have little idea how formally to reason about metaprograms. This paper provides the first program logics for homogeneous metaprogramming – us...

متن کامل

Interleaving data and effects

The study of programming with and reasoning about inductive datatypes such as lists and trees has benefited from the simple categorical principle of initial algebras. In initial algebra semantics, each inductive datatype is represented by an initial f-algebra for an appropriate functor f. The initial algebra principle then supports the straightforward derivation of definitional principles and p...

متن کامل

Scala Macros, a Technical Report (meta 2012)

Metaprogramming is a powerful technique of software development, which allows to automate program generation. Applications of metaprogramming range from improving expressiveness of a programming language via deep embedding of domain-specific languages to boosting performance of produced code by providing programmer with finegrained control over compilation. In this report we introduce macros, f...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2018